#pragma once
#include "Math.h"

struct ObjectInfo
{
	// DetailInfo: Texture Path, HP, Power, etc...
	char DetailInfo[100];
	Vector3 Position, Rotation, Scale;
};

struct TerrainInfo
{
	char		HeightMapPath[100];
	char**		TexturePath;
	int			TextureCount;
};

struct SkydomeInfo
{
	char		NFGPath[100];
	const char*	TexturePath[6];
};

class Level
{
public:
	// Enemies
	int m_iNumEnemies;
	ObjectInfo* m_EnemyInfo;

	// Tower Info
	ObjectInfo m_TowerInfo;

	// Billboard info
	int m_iNumBillboards;
	ObjectInfo* m_BillBoards;

	// Terrain
	TerrainInfo m_TerrainInfo;

	// Skydome
	SkydomeInfo m_SkydomeInfo;
public:
	Level();
	~Level();
public:
	int load(char* level_file);
	int save(char* level_file);
};